iT邦幫忙

2024 iThome 鐵人賽

DAY 16
0

解題程式碼

var increasingTriplet = function (nums) {
  let min = nums[0];
  let mid = Infinity;

  for (let i = 1; i < nums.length; i++) {
    if (min > nums[i]) {
      min = nums[i];
    } else if (mid > nums[i] && nums[i] > min) {
      mid = nums[i];
    } else if (nums[i] > min && nums[i] > mid) {
      return true;
    }
  }
  return false;
};

解題思路、演算法

花花酱 LeetCode 334. Increasing Triplet Subsequence 提供的圖片來看會比較清楚。

遍歷陣列一次,然後用兩個變數儲存找到的最小值和次小值,當找到比它們大的數的時候,就代表能找到 triple of indices。

解法的時間、空間複雜度

時間複雜度: O(n)
空間複雜度: O(1)

參考資料

Yes


上一篇
34. Find First and Last Position of Element in Sorted Array
下一篇
724. Find Pivot Index
系列文
向 NeetCode、官神看齊! 分享自己的解題筆記和影片。30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言